package com.ruoyi.project.wf.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.system.user.domain.User;
import com.ruoyi.project.wf.domain.WfActBranch;
import com.ruoyi.project.wf.domain.WfProcessDef;
import com.ruoyi.project.wf.domain.WfProcessInst;
import com.ruoyi.project.wf.domain.WfWorkItem;
import com.ruoyi.project.wf.model.WorkitemSubmitDataWrapper;

import java.sql.Date;
import java.util.List;

/**
 * 流程定义Service接口
 *
 * @author XQ.XU
 * @date 2020-03-20
 */
public interface IWfWorkFlowService extends IService<WfProcessDef>
{
    public WfProcessInst startPaeaWorkflow(User smUser, String wfProcessDefId, Date trDate);
    public WfWorkItem submitPaeaWorkitem(User smUser, String workitemId, WorkitemSubmitDataWrapper workitemResultDataWrapper, Date trDate);
    public WfWorkItem obtainPaeaWorkitem(User smUser, WfWorkItem wfWorkItem);
    public WfWorkItem obtainPaeaWorkitem(User smUser,String workitemId, Date trDate);
    public WfActBranch getItemInfor(String processDefId);
    public WfWorkItem submitStartPaeaWorkitem(User smUser, String processInstId, Date trDate);
}
